﻿using System.Collections.Generic;

namespace PSE.Updater.Client.Engine
{
    /// <summary>
    /// Entidade que representa os detalhes de uma dependencia
    /// </summary>
    internal class DependenceDetails
    {
        /// <summary>
        /// Índice de Instalação da Dependência
        /// </summary>
        public int Index { get; set; }

        /// <summary>
        /// Nome da Dependência
        /// </summary>
        public string SystemName { get; set; }

        /// <summary>
        /// Versão da Dependência
        /// </summary>
        public string Version { get; set; }

        List<ModuleDetails> _module;
        /// <summary>
        /// Lista de Módulos da Dependência
        /// </summary>
        public List<ModuleDetails> Modules { get { return _module; } }

        /// <summary>
        /// Adiciona um Módulo a Dependência
        /// </summary>
        /// <param name="moduleDetails">Módulo a ser adicionado</param>
        public void AddModuleDetails(ModuleDetails moduleDetails)
        {
            if (_module == null)
                _module = new List<ModuleDetails>();

            _module.Add(moduleDetails);
        }
    }
}
